<?php
$this->set('title_for_layout', 'Laksmi / Bizonylat módosítás');

$this->Html->script('cookie', false);
$this->Html->script('ajax.cachedautocompleter.js', false);
$this->Html->script('unittest', false);
$this->Html->script('laksmi.bizonylat.js?v=131218', false);

$modosithat = false;
if($this->Session->read('Auth.User.csoport') == 1 || ($this->Session->read('Auth.User.csoport') == 2 && !$bizonylat['Bizonylat']['zarolt'])){	//van módosítási joga és a bizonylat nem zárolt
	$modosithat = true;
}

$css = $bizonylat['Bizonylat']['spec'] ?
			($bizonylat['Bizonylat']['spec'] == 'd' ? 'torolt' : null) :
			null;

//debug($bizonylat);

//attól függően, hogy az alapértelmezett számla t vagy k bevétel vagy kiadásról van szó
$konyvelesiOldal = ($bizonylat['Naplo']['alapertelmezett_szamla'] == $bizonylat['Tetel'][0]['t']) ? 'TartozikSzamla' : 'KovetelSzamla';
$iranyCss = ($alapInfo['naplotipusok']['kod'] != 'E') ? (($konyvelesiOldal == 'TartozikSzamla') ? 'be' : 'ki') : 'vegyes';
$ellenOldal = ($konyvelesiOldal == 'TartozikSzamla') ? 'KovetelSzamla' : 'TartozikSzamla';

//debug($alapInfo);
//debug($naplo);

?>
<div id="bizonylat" <?php print 'class="'.$css.'"'; ?>>
	<?php
	print '<fieldset id="alap">';
		print '<legend id="alapcim" class="'.$iranyCss.'">';
		print ($alapInfo['szamlak']['szam']?$alapInfo['szamlak']['szam']:'') . ' ' . $alapInfo['naplok']['nev'] . ' ' . $alapInfo['naplotipusok']['nev'] . ' (' . $alapInfo['valutak']['nev'] . ') ';
		print $alapInfo['naplotipusok']['kod'] . $alapInfo['naplok']['sorszam'] . '/<span id="sorszamLegend">' . $bizonylat['Bizonylat']['sorszam'] . '</span>';
		if($alapInfo['naplotipusok']['kod'] == 'E'){
			$linkUrl = array('controller' => 'bizonylatok',
								'action' => 'naplolista/' . $alapInfo['naplok']['id']);
		}
		else{
			$linkUrl = array('controller' => 'bizonylatok',
									'action' => 'lekerdezes',
									'osztalytol' => $alapertelmezettOsztaly,
									'szamlatol' => $alapInfo['szamlak']['szam'],
									'bizonylatSorszam' => $bizonylat['Bizonylat']['sorszam'], 
									'#' => $bizonylat['Bizonylat']['sorszam']);
		}
		print $this->Html->link(
							$this->Html->image('lekerdezes.png', array('width' => 22)),
							$linkUrl,
							array('title' => 'Számla forgalom', 'escape' => false));
		print '</legend>';

		if(isset($valutaegyenleg)){
			$egyenleg = $valutaegyenleg['tegyenleg']-$valutaegyenleg['kegyenleg'];
			$decimals = 2;
		}
		else{
			$egyenleg = $egyenleg['tegyenleg']-$egyenleg['kegyenleg'];
			$decimals = 0;
		}
		print '<span id="zegyenleg"'.(($alapInfo['naplotipusok']['kod'] == 'E')?' style="visibility:hidden;"':'').'>' .
				number_format($egyenleg, $decimals, ',', '.')
				. '</span>';

		print $this->Html->image($this->Session->read('Bizonylat.osszegBizonylatig') ? 'bizonylatig.png' : 'vegig.png', array('width' => 22, 'id' => 'osszegvaltas', 'title' => $this->Session->read('Bizonylat.osszegBizonylatig') ? 'Egyenleg a bizonylatig' : 'Záró egyenleg'));

		print $this->element('bizonylat.lapozo', array(
														'naploid' => $bizonylat['Naplo']['id'],
														'sorszam' => $bizonylat['Bizonylat']['sorszam']
														));
	print '</fieldset>';
	
	print '<div id="ajaxloader" style="display:none;">'.$this->Html->image('ajax-loader.gif').'</div>';
	
	print $this->Form->create('Bizonylat', array('id' => 'BizonylatForm', 'action' => 'modosit/' . $bizonylat['Naplo']['id'] . '/' . $bizonylat['Bizonylat']['sorszam']));
	print '<fieldset id="alapadatok">';

		print $this->Form->hidden('bizonylat_id', array('value' => $bizonylat['Bizonylat']['id']));
		print $this->Form->hidden('user_id', array('value' => $this->Session->read('Auth.User.id')));
		print $this->Form->hidden('spec', array('value' => $bizonylat['Bizonylat']['spec']));		
		?>
		<div class="tout">
			<div class="tsor">
				<?php
				if($alapInfo['naplotipusok']['kod'] != 'E'){
				?>
					<div class="tcell irany">
						<label for="BizonylatIranyB"><u>B</u>evétel</label>
						<input type="radio" disabled="disabled" value="b" id="BizonylatIranyB" name="data[Bizonylat][irany]" <?php print ($konyvelesiOldal == 'TartozikSzamla') ? 'checked="checked"' : ''; ?> />
					</div>
					<div class="tcell irany">
						<label for="BizonylatIranyK"><u>K</u>iadás</label>
						<input type="radio" disabled="disabled" value="k" id="BizonylatIranyK" name="data[Bizonylat][irany]" <?php print ($konyvelesiOldal != 'TartozikSzamla') ? 'checked="checked"' : ''; ?> />
					</div>
				<?php
				}
				?>
				<?php
				if(isset($valuta)){
					//print '<div class="tcell">';
					print $this->Form->input('arfolyam', array(
																'label' => array(
																					'class' => 'padl1',
																					'text' => 'Árfolyam (Ft/'.$valuta['Valuta']['nev'].')'
																					),
																'value' => number_format($bizonylat['Bizonylat']['arfolyam'], 2, ',', ' '),
																'div' => null,
																'type' => 'text',
																'disabled' => 'true'
																)
													 );
					//print '</div>';
				}
				?>
			</div>

			<?php
			print '<div class="tsor">';
				print $this->Form->input('datum',
								array(
									'label' => __('Date'),
									'type' => 'text',
									'value' => $bizonylat['Bizonylat']['datum'],
									'disabled' => 'true',
									'div' => null
									));

				print '<span class="tcell padl1">Osztály</span>';
				if($alapertelmezettOsztaly){//ha van a naplóban alapértelmezett osztály akkor nem engedjük módosítani
					print '<span id="osztkod" class="tcell jobb">'.$bizonylat['Osztaly']['kod'] . ' ' . $bizonylat['Osztaly']['nev'].'</span>';
				}
				else{
					print '<div class="tcell">';
						print '<input type="text" value="'.$bizonylat['Osztaly']['kod'] . ' ' . $bizonylat['Osztaly']['nev'] .'" autocomplete="off" id="Osztalytol" name="data[Bizonylat][osztalytol]" disabled="disabled" />';
						print '<div class="auto_complete" id="Osztalytol_autoComplete" style="display: none;"></div>';
						print '<script type="text/javascript">//<![CDATA['."\n";
						print 'new Ajax.Autocompleter("Osztalytol", "Osztalytol_autoComplete", "'.$this->Html->url(array('controller'=>'osztalyok', 'action'=>'search/' . $alapInfo['naplok']['id'])).'", {afterUpdateElement:laksmi.bizonylat.bizonylat.setOsztalyId});'."\n";
						print '//]]></script>';
					print '</div>';
				}
				print $this->Form->hidden('osztaly_id', array('value' => $bizonylat['Osztaly']['id']));

			print '</div>';

			print '<div class="tsor">';
				print $this->Form->input('megjegyzes',
								array(
									'label' => __('Text'),
									'value' => $bizonylat['Bizonylat']['megjegyzes'],
									'disabled' => 'true',
									'div' => null
									));
			
				print '<span class="tcell padl1">Bizonylat összeg</span>';
				$valutaOsszeg = 0;
				if(!empty($bizonylat['Tetel'][0]['Valutatetel'])){
					//valuta tételekkel van dolgunk kalkulálni kell a bizonylat összeget
					foreach($bizonylat['Tetel'] as $t){
						if($t['spec'] != 'd') $valutaOsszeg += $t['Valutatetel']['osszeg'];
					}
				}
				$osszeg = ($valutaOsszeg) ? number_format($valutaOsszeg, 2, ',', ' ') : number_format($bizonylat['Bizonylat']['osszeg'], 0, ',', ' ');
				print '<span id="bizossz" class="tcell">'.$osszeg.'</span>';

				if(isset($bizonylat['Naplotipus']) && ($bizonylat['Naplotipus']['kod'] == 'S' || $bizonylat['Naplotipus']['kod'] == 'V'))
					print $this->Form->input('hatarido');
			print '</div>';

	print '</fieldset>';
	?>
	
	<fieldset>
	<legend><?php print __('Items');?></legend>
	<table class="bizonylatlista">
		<?php
			//tételek
			$z = 0;
			$bizonylatTetelek = array();
			
			//tételsor form
			if($alapInfo['naplotipusok']['kod'] != 'E')
				print $this->element('bizonylat.tetelSor', array('options' => 'id="bevitel" style="display:none;"', 'iranyCss' => $iranyCss, 'modosithat' => $modosithat, 'naploId' => $alapInfo['naplok']['id']));
			else
				print $this->element('bizonylat.tetelSorVegyes', array('options' => 'id="bevitel" style="display:none;"', 'iranyCss' => $iranyCss, 'modosithat' => $modosithat, 'naploId' => $alapInfo['naplok']['id']));

			foreach($bizonylat['Tetel'] as $tetel){

				print '<tr id="sor_'.$z.'" class="';
				if($z%2)
					print ' odd';
				else
					print ' even';
				if($tetel['spec'])
					print ' spec_' . $tetel['spec'];
				print '">';
				if(isset($tetel['Valutatetel']['osszeg']))
					print '<td class="jobb tamount">'. number_format($tetel['Valutatetel']['osszeg'], 2, ',', ' ') .'</td>';
				else
					print '<td class="jobb tamount">'. number_format($tetel['osszeg'], 0, ',', ' ') .'</td>';
				print '<td class="kozep ttext">'. $tetel['szoveg'] .'</td>';
				if($alapInfo['naplotipusok']['kod'] == 'E'){
					print '<td class="taccount">'. $this->Html->link($tetel['TartozikSzamla']['szam'], array('controller' => 'bizonylatok', 'action' => 'lekerdezes', 'osztalytol' => $bizonylat['Osztaly']['id'], 'szamlatol' => $tetel['TartozikSzamla']['id'])) . '<span class="szamlaNev">' . $tetel['TartozikSzamla']['nev'] .'</span></td>';
					print '<td class="taccount">'. $this->Html->link($tetel['KovetelSzamla']['szam'], array('controller' => 'bizonylatok', 'action' => 'lekerdezes', 'osztalytol' => $bizonylat['Osztaly']['id'], 'szamlatol' => $tetel['KovetelSzamla']['id'])) . '<span class="szamlaNev">' . $tetel['KovetelSzamla']['nev'] .'</span></td>';
				}
				else
					print '<td class="taccount">'. $this->Html->link($tetel[$ellenOldal]['szam'], array('controller' => 'bizonylatok', 'action' => 'lekerdezes', 'osztalytol' => $bizonylat['Osztaly']['id'], 'szamlatol' => $tetel['ellenoldal']['id'])) . '<span class="szamlaNev">' . $tetel[$ellenOldal]['nev'] .'</span></td>';

				print '<td class="jobb ttags pici">';
				foreach($tetel['gyujtok'] as $gyujto){
					print '<span id=delspantag' . $gyujto['id'] . ' class="gyujtok">';
						print $this->Html->link($gyujto['nev'],
							array(
								'controller' => 'bizonylatok',
								'action' => 'lekerdezes',
								'osztalytol' => $alapertelmezettOsztaly,
								'szamlatol' => $alapInfo['szamlak']['szam'],
								'tetelGyujto' => $gyujto['id']),
							null,
							null,
							false);
					print  '</span>';
					$bizonylatTetelek['data[Tetel]['.$z.'][gyujto][]'][] = $gyujto['id'];
				}
				print '</td>';
				if($modosithat) print '<td class="kozep">'
					.$this->Html->image('felkuld.png', array('id' => 'mod_'.$z, 'class'=>'felkuld', 'title' => 'Felküld'))
					.$this->Html->image('torol.png', array('id' => 'del_'.$z, 'title'=>'Tételsor törlése', 'class'=>'torol', 'width'=>'25', 'height'=>'25'))
					.'</td>';
				print '</tr>';
//debug($tetel);
				//JavaScript oldali kezeléshez fel kell töltenünk az ojjektumot
				$bizonylatTetelek['data[Tetel]['.$z.'][id]'] = $tetel['id'];
				$bizonylatTetelek['data[Tetel]['.$z.'][osszeg]'] = isset($tetel['Valutatetel']['osszeg']) ? $tetel['Valutatetel']['osszeg'] : $tetel['osszeg'];
				$bizonylatTetelek['data[Tetel]['.$z.'][szoveg]'] = $tetel['szoveg'];

				if($alapInfo['naplotipusok']['kod'] != 'E'){
					$bizonylatTetelek['data[Tetel]['.$z.'][account]'] = $tetel[$ellenOldal]['id'];
					$bizonylatTetelek['data[Tetel]['.$z.'][accountNev]'] = $tetel[$ellenOldal]['szam'] . ' ' . $tetel[$ellenOldal]['nev'];
				}
				else{
					$bizonylatTetelek['data[Tetel]['.$z.'][accountT]'] = $tetel['TartozikSzamla']['id'];
					$bizonylatTetelek['data[Tetel]['.$z.'][accountTNev]'] = $tetel['TartozikSzamla']['szam'] . ' ' . $tetel['TartozikSzamla']['nev'];
					$bizonylatTetelek['data[Tetel]['.$z.'][accountK]'] = $tetel['KovetelSzamla']['id'];
					$bizonylatTetelek['data[Tetel]['.$z.'][accountKNev]'] = $tetel['KovetelSzamla']['szam'] . ' ' . $tetel['KovetelSzamla']['nev'];
				}
				$z++;
			}

			/*
			js ojjektumok feltöltése adatokkal
			laksmi.bizonylat.bizonylat.tetelek
				data[Tetel][0][account], gyujto, osszeg, szoveg
			*/
			print $this->Html->scriptBlock("
					document.observe('dom:loaded', function(){
						laksmi.bizonylat.bizonylat.tetelek = ".json_encode($bizonylatTetelek).";
						laksmi.bizonylat.bizonylat.tetel.counter = ".$z."
					});",
					array('inline' => false));
		?>
	</table>
	</fieldset>	

	<fieldset>
		<legend id="naploinfo">
		<?php
		print ($alapInfo['szamlak']['szam']?$alapInfo['szamlak']['szam']:'') . ' ' . $alapInfo['naplok']['nev'] . ' ' . $alapInfo['naplotipusok']['nev'] . ' (' . $alapInfo['valutak']['nev'] . ') ';
		print $alapInfo['naplotipusok']['kod'] . $alapInfo['naplok']['sorszam'] . '/' . $bizonylat['Bizonylat']['sorszam'];
		?>
		</legend>
		<?php
		print '<div id="u">' .
			'Rögzítette: ' . $bizonylat['User']['nev'] . '<br />' .
			$this->Session->read('Auth.User.nev') . ' // ' . $this->Session->read('Settings.cegNev') .  ' // ' . $this->Session->read('Settings.ev')  . '<br />' .
			'Állapot: ' . ($bizonylat['Bizonylat']['zarolt']?'Lezárt':'Nyitva') .
		'</div>';

		print '<ul id="alsoMenu">';
		if($modosithat){
			if(!$naplo['Naplo']['lezart']){
				print '<li>' . $this->Form->submit('ment.png',
										array(
											'id' => 'bizonylatMent',
											'disabled' => true,
											'title' => 'Mentés',
											'div' => false
										)) . ' <u>M</u>entés ' . '</li>';
			}
		}
		print '<li>' . $this->Html->link($this->Html->image('uj.png', array('title'=>'Új bizonylat', 'class'=>'')), array('action' => 'uj/' . $bizonylat['Naplo']['id']), array('escape' => false))  . ' Új bizonylat ' . '</li>';
		print '</ul>';
		print $this->Form->end();
		?>
	</fieldset>
</div>